package leetcode_jz_offer.day13_array_string;

/**
 * 输入一个递增排序的数组和一个数字s，在数组中查找两个数，使得它们的和正好是s
 * 如果有多对数字的和等于s，则输出任意一对即可。
 **/
public class Num57_和为s的两个数字 {
    public int[] twoSum(int[] nums, int target) {
        //利用双指针，left,right。nums[left]+nums[right]>target，则right左移
        // <target，则left右移，相等则输出这两个数即可
        int left=0;
        int right=nums.length-1;
        int[] array=new int[2];
        while(left<right){
            int sum=nums[left]+nums[right];
            if(sum>target){
                right--;
            }else if(sum<target){
                left++;
            }else{//找到了
                array[0]=nums[left];
                array[1]=nums[right];
                break;
            }
        }
        return array;
    }
}
